<?xml version="1.0"?>
<component name="org.nuxeo.ecm.localconf.ui.override">

  <require>org.nuxeo.ecm.localconf.ui</require>

  <extension point="widgets" target="org.nuxeo.ecm.platform.forms.layout.WebLayoutManager">

    <widget name="ui_types_selection" type="shuttle">
      <labels>
        <label mode="any">label.local.configuration.ui.types.allowedTypesSelection</label>
      </labels>
      <translated>true</translated>
      <fields>
        <field>uitypesconf:allowedTypes</field>
      </fields>
      <properties mode="any">
        <property name="availableElementsLabel">
          label.local.configuration.selection.availableUITypes
        </property>
        <property name="selectedElementsLabel">
          label.local.configuration.selection.selectedUITypes
        </property>
        <property name="sourceItems">
          #{typesConfigurationActions.getNotSelectedTypes(layoutValue)}
        </property>
        <property name="sourceItemVar">type</property>
        <property name="sourceItemValue">#{type.id}</property>
        <property name="sourceItemLabel">#{messages[type.label]}</property>
        <property name="sourceItemOrdering">label</property>
        <property name="sourceItemCaseSensitive">true</property>
        <property name="targetItems">
          #{typesConfigurationActions.getSelectedTypes(layoutValue)}
        </property>
        <property name="targetItemVar">type</property>
        <property name="targetItemValue">#{type.id}</property>
        <property name="targetItemLabel">#{messages[type.label]}</property>
      </properties>
    </widget>

    <widget name="deny_all_types" type="checkbox">
      <labels>
        <label mode="any">label.local.configuration.ui.types.denyAllTypes</label>
      </labels>
      <translated>true</translated>
      <fields>
        <field>uitypesconf:denyAllTypes</field>
      </fields>
    </widget>

    <widget name="default_type" type="selectOneMenu">
      <labels>
        <label mode="any">label.local.configuration.ui.automaticType</label>
      </labels>
      <translated>true</translated>
      <fields>
        <field>uitypesconf:defaultType</field>
      </fields>
      <selectOptions>
        <option itemLabel="#{messages['label.local.configuration.ui.defaultType']}" itemValue=""/>
        <options itemLabel="#{messages[type.label]}" itemValue="#{type.id}" value="#{typesConfigurationActions.getTypesWithSchemaFile(layoutValue)}" var="type"/>
      </selectOptions>
    </widget>

  </extension>

</component>
